package com.tanhua.dubbo.server.api;

import com.tanhua.dubbo.server.pojo.Video;
import com.tanhua.dubbo.server.vo.PageInfo;

import java.util.List;

public interface VideoApi {

    /**
     * 查看小视频列表
     * @param id
     * @param page
     * @param pageSize
     * @return
     */
    PageInfo<Video> findVideoList(Long id, Integer page, Integer pageSize);

    /**
     * 发送小视频
     * @param video
     * @return 保存成功之后返回视频ID
     */
    String saveVideo(Video video);

    /**
     * 通过ID查询单个视频信息
     * @param videoId
     * @return
     */
    Video findVideoById(String videoId);

    /**
     * 关注小视频
     * @param id 当前登录用户的ID
     * @param focusUserId 被关注的这条视频的发布者的ID
     * @return
     */
    Boolean focusVideo(Long id, Long focusUserId);

    /**
     * 查看是否关注小视频的方法
     * @param userId 当前登录用户的ID
     * @param focusUserID 被关注目标用户的ID
     * @return
     */
    Boolean findFocusCord(Long userId,Long focusUserID);

    /**
     * 取消关注小视频的方法
     * @param userId 当前登录用户ID
     * @param focusUserId 被关注目标用户ID
     * @return
     */
    Boolean unFocusVideo(Long userId,Long focusUserId);

    // ===== ===== =====tanshuhoutai 实战项目 ===== ===== =====
    /**
     *  根据用户uid查询小视频列表
     * @param uid
     * @return
     */
    List<Video> queryVideosList(Integer uid);

}
